<!DOCTYPE html>
<html>
<img src="images/qr.jpg" />

WIFI:T:WPA;P:pass@@word123;S:xiaomi520jasmine;H:false;
<!--

	/**  * 此文件仅支持android  */
	window.WIFI = function () {
		this.init();
	}

	/**  * 初始化  */
	WIFI.prototype.init = function () {
		var Context = plus.android.importClass("android.content.Context");
		plus.android.importClass("android.net.wifi.WifiManager");
		plus.android.importClass("java.util.List");
		plus.android.importClass("java.util.ArrayList");
		plus.android.importClass("android.net.wifi.ScanResult");
		plus.android.importClass("android.net.wifi.WifiInfo");
		plus.android.importClass("java.util.BitSet");
		this.WifiConfiguration = plus.android.importClass("android.net.wifi.WifiConfiguration");
		this.wifiManager = plus.android.runtimeMainActivity().getSystemService(Context.WIFI_SERVICE);
	}

	/**  * 获取wifi列表  */
	WIFI.prototype.getAllList = function () {
		return this.wifis = this.wifiManager.getScanResults();
	}

	/**  * 校验ssid 返回的是有此ssid的wifi个数  * @param {Object} ssid wifi名  */
	WIFI.prototype.checkSsid = function (ssid) {
		var list = this.wifiManager.getScanResults();
		var len = list.size();
		var num = 0;
		for (var i = 0; i < len; i++) {
			var tmp = list.get(i);
			if (tmp.plusGetAttribute('SSID') == ssid) {
				console.log('checkSsid === ' + i + '>>' + tmp.plusGetAttribute('SSID'))
				num++;
			}
		}
		return num;
	}

	/**  * 移除已经存在的ssid  * @param {Object} ssid wifi名  */
	WIFI.prototype.removeExsits = function (ssid) {
		var list = this.wifiManager.getConfiguredNetworks();//获取到已经配置过的wifi列表
		var len = list.size();
		var wifiInfo = this.getNow();
		var tSsid = '"' + ssid + '"';
		for (var i = 0; i < len; i++) {
			var tmp = list.get(i);
			var tmpSsid = tmp.plusGetAttribute('SSID');
			console.log('removeExsits===>' + tmpSsid);
			if (tmpSsid == tSsid) {
				console.log('removeExsits===>' + tmpSsid);
				this.disConnect(wifiInfo.getNetworkId());
				this.wifiManager.removeNetwork(tmp.plusGetAttribute('networkId'));
			}
		}
	}

	/**  * 连接已有的wifi 会自动校验  * @param {Object} netWorkId wifi的id  */
	WIFI.prototype.connectOld = function (netWorkId) {
		var now = this.getNow(); if (now.getNetworkId() != netWorkId) { //当前连接的不是将要连接的   
			this.wifiManager.enableNetwork(netWorkId, true);
		}
	}

	/**  * 取消连接  * @param {Object} netWorkId wifi的id  */
	WIFI.prototype.disConnect = function (netWorkId) {
		var now = this.getNow(); if (now.getNetworkId() == netWorkId) { //当前连接的是需要取消的 则取消   
			this.wifiManager.disableNetwork(netWorkId);
			this.wifiManager.disconnect();
		}
	}

	/**  * 获取当前连接的wifi  */
	WIFI.prototype.getNow = function () {
		return this.wifiManager.getConnectionInfo();
	} /**  *  */
	WIFI.prototype.getWifiState = function () {
		return this.wifiManager.getWifiState();
	}

	/**  * 添加新的wifi并连接  * @param {Object} ssid wifi名  * @param {Object} pwd 密码  */
	WIFI.prototype.connectNew = function (ssid, pwd) {
		var WifiConfiguration = this.WifiConfiguration; var wcf = new WifiConfiguration();

		wcf.plusGetAttribute('allowedAuthAlgorithms').set(WifiConfiguration.AuthAlgorithm.OPEN);
		wcf.plusGetAttribute('allowedGroupCiphers').set(WifiConfiguration.GroupCipher.TKIP);
		wcf.plusGetAttribute('allowedKeyManagement').set(WifiConfiguration.KeyMgmt.WPA_PSK);
		wcf.plusGetAttribute('allowedPairwiseCiphers').set(WifiConfiguration.PairwiseCipher.TKIP);
		wcf.plusGetAttribute('allowedGroupCiphers').set(WifiConfiguration.GroupCipher.CCMP);
		wcf.plusGetAttribute('allowedPairwiseCiphers').set(WifiConfiguration.PairwiseCipher.CCMP);

		wcf.plusSetAttribute('status', WifiConfiguration.Status.ENABLED);
		wcf.plusSetAttribute('SSID', '"' + ssid + '"');
		wcf.plusSetAttribute('preSharedKey', '"' + pwd + '"');
		wcf.plusSetAttribute('hiddenSSID', true);

		var wcgID = this.wifiManager.addNetwork(wcf);
		var b = this.wifiManager.enableNetwork(wcgID, true);
	}

	/**  * 改变连接的wifi  * @param {Object} index wifi列表的索引  */
	WIFI.prototype.change = function (index) {
		// 索引大于配置好的网络索引返回    
		if (index > this.wifis.size()) {
			return;
		}  // 连接配置好的指定ID的网络    
		this.wifiManager.enableNetwork(this.wifis.get(index).plusGetAttribute('networkId'), true);
	}

	/**  * 获取wifi是否打开  */
	WIFI.prototype.isWifiEnabled = function () { return this.wifiManager.isWifiEnabled(); }

	/**  * 打开wifi  */
	WIFI.prototype.open = function () { console.log('open函数已执行'); this.wifiManager.setWifiEnabled(true); }

	/**  * 关闭wifi  */
	WIFI.prototype.close = function () { this.wifiManager.setWifiEnabled(false); }

	/**  * 兼容版的wifi设置 只提供跳转wifi设置界面  */
	window.C_WIFI = function () {
		this.main = plus.android.runtimeMainActivity();
		var Intent = plus.android.importClass("android.content.Intent");
		var Settings = plus.android.importClass('android.provider.Settings');
		this.wifiIntent = new Intent(Settings.ACTION_SETTINGS);
	} /**  * 跳转wifi界面  */
	C_WIFI.prototype.goWifi = function () {
		this.main.startActivity(this.wifiIntent);
	}



	/**  
 * 在Android平台通过NJS显示系统提示框  
 */
	function njsAlertForAndroid() {
		// 导入AlertDialog类  
		var AlertDialog = plus.android.importClass("android.app.AlertDialog");
		// 创建提示框构造对象，构造函数需要提供程序全局环境对象，通过plus.android.runtimeMainActivity()方法获取  
		var dlg = new AlertDialog.Builder(plus.android.runtimeMainActivity());
		// 设置提示框标题  
		dlg.setTitle("自定义标题");
		// 设置提示框内容  
		dlg.setMessage("使用NJS的原生弹出框,可自定义弹出框的标题、按钮");
		// 设置提示框按钮  
		dlg.setPositiveButton("确定(或者其他字符)", null);
		// 显示提示框  
		dlg.show();
	}

	function loadURL() {
		var nwv = plus.android.currentWebview();
		plus.android.invoke(nwv, "loadUrl", "http://www.baidu.com/");
	}


-->

<script type="text/javascript">
	document.addEventListener("plusready", ready, false);
	function ready() { 
		alert("搞不定了，靠。")
	}
	function sms() {
		if (undefined==plus) {
			var alertdialog = plus.android.importClass("android.app.AlertDialog");
			var dlg = new alertdialog.Builder(plus.android.runtimeMainActivity());
			dlg.setTitle("自定义标题");
			dlg.setMessage("使用NJS的原生弹出框，可自定义弹出框的标题、按钮");
			dlg.setPositiveButton("确定(或者其他字符)", null);
			dlg.show()
		} else {
			alert("错误,无法激活plus 5+");
		}
	}
</script>
<script>


// 这里可以调用5+ API了，为了更好的兼容性，应该使用以下代码进行判断
if (window.plus) {
    // 在这里调用5+ API
    this.plusReady();
} else { 
    // 兼容老版本的plusready事件
    document.addEventListener('plusready', this.plusReady(), false);
}
 
function plusReady() {
    // 在这里调用plus api
    plus.device.getInfo({
        success: function (e) {
           alert('getDeviceInfo success');
        },
        fail: function (e) {
           alert('getDeviceInfo failed');
        }
    })
}
</script>
<button onclick="ready();sms()">测试</button>

</html>